function popUpAttach(url) {
	var newwindow = window.open(url, 'Anexo', 'height=160,width=450');
	if (window.focus) {
		newwindow.focus();
	}
}

function poptastic(url, name, heigth, width) {
	var newwindow = window
			.open(url, name, 'height=' + heigth, 'width=' + width);
	if (window.focus) {
		newwindow.focus();
	}
}

/*
 * fun��o para permitir a digita��o de n�meros decimais e inteiros
 */
function ForceNumericInput(event, This, AllowDecimal, AllowMinus) {

	if (arguments.length == 1) {
		var s = This.value;
		// garante que o sinal de "-" seja o primeiro do �ndice
		var i = s.lastIndexOf("-");
		if (i == -1)
			return;
		if (i != 0)
			This.value = s.substring(0, i) + s.substring(i + 1);
		return;
	}
	switch (event.keyCode) {
	case 8: // backspace
	case 9: // tab
	case 37: // left arrow
	case 39: // right arrow
	case 46: // delete
		event.returnValue = true;
		return;
	}
	if (event.keyCode == 189) { // sinal de n�mero de negativo

		if (AllowMinus == false) {
			CancelEventExecution(event);
			return;
		}
		// aguarda at� que o controle tenha sido atualizado
		var s1 = "ForceNumericInput(document.getElementById('" + This.id
				+ "'))";
		setTimeout(s1, 250);
		return;
	}
	if (AllowDecimal && event.keyCode == 188) {
		if (This.value.indexOf(",") >= 0) {
			// restringe a digita��o de apenas uma v�rgula
			CancelEventExecution(event);
			return;
		}
		event.returnValue = true;
		return;
	}
	// permite caracteres entre 0 e 9 96 � 105
	if ((event.keyCode >= 48 && event.keyCode <= 57)
			|| (event.keyCode >= 96 && event.keyCode <= 105)) {
		event.returnValue = true;
		return;
	}
	CancelEventExecution(event);
}
/*
 * Cancela a execu��o de uma function mapeada por um evento
 */
function CancelEventExecution(event) {
	if (navigator.appName == "Netscape") {
		event.preventDefault();
	} else {
		event.returnValue = false;
	}
}

function checkAll(name, chk) {
	var checksVector = document.getElementsByName(name);

	if (chk.checked == true) {
		for (i = 0; i < checksVector.length; i++) {
			checksVector[i].checked = true;
		}
	} else {

		for (i = 0; i < checksVector.length; i++) {
			checksVector[i].checked = false;
		}
	}
}

function OnlyNumber(edValue)

{

	var resultado = '';

	var aceita = '0123456789';

	var campo = edValue.value;

	// limpa outros caracteres do campo

	for (i = 0; i <= campo.length; i++)

	{

		for (j = 0; j <= aceita.length; j++)

		{

			if (campo.charAt(i) == aceita.charAt(j))

			{

				resultado = resultado + campo.charAt(i);

			}

		}

	}

	edValue.value = resultado;

}

function StringToMoney(edValue) {

	var aceita = '0123456789';

	var resultado = '';

	var i = 0;

	var iZeroAEsq = 1;

	var valor = edValue.value;

	// Retira todos os zeros a esquerda e o ponto decimal

	for (i = 0; i <= valor.length; i++) {

		if ((valor.charAt(i) == '0') && (iZeroAEsq == 0)) {

			resultado = resultado + valor.charAt(i);

		}

		if ((valor.charAt(i) != '0') && (valor.charAt(i) != ',')) {

			resultado = resultado + valor.charAt(i);

			iZeroAEsq = 0;

		}

	}

	valor = resultado;

	resultado = '';

	// Atribui ao valor o formato desejado, caso o seu tamanho

	// seja menor que o esperado.

	if (valor.length == 0) {
		valor = '000'
	} else

	if (valor.length == 1) {
		valor = '00' + valor
	} else

	if (valor.length == 2) {
		valor = '0' + valor
	}
	;

	// Verifica se todos os caracteres s�o n�meros

	for (i = 0; i <= valor.length; i++) {

		for (j = 0; j <= aceita.length; j++) {

			if (valor.charAt(i) == aceita.charAt(j)) {

				resultado = resultado + valor.charAt(i);

			}

		}

	}

	valor = resultado;

	resultado = '';

	// Atribui o ponto decimal no lugar correto

	for (i = valor.length; i >= 0; i--) {

		if ((valor.length - i) == 3) {

			resultado = ',' + resultado

		}

		if ((valor.length - i) == 6) {

			resultado = '.' + resultado

		}

		if ((valor.length - i) == 9) {

			resultado = '.' + resultado

		}

		if ((valor.length - i) == 12) {

			resultado = '.' + resultado

		}

		resultado = valor.charAt(i) + resultado

	}

	edValue.value = resultado;

	return 0;

}


function StringToHora(edValue) {

	var aceita = '0123456789';

	var resultado = '';

	var i = 0;

	var iZeroAEsq = 2;

	var valor = edValue.value;

	// Retira todos os zeros a esquerda e o ponto decimal

	for (i = 0; i <= valor.length; i++) {

		if ((valor.charAt(i) == '0') && (iZeroAEsq == 0)) {

			resultado = resultado + valor.charAt(i);

		}

		if ((valor.charAt(i) != '0') && (valor.charAt(i) != ':')) {

			resultado = resultado + valor.charAt(i);

			iZeroAEsq = 0;

		}

	}

	valor = resultado;

	resultado = '';

	// Atribui ao valor o formato desejado, caso o seu tamanho

	// seja menor que o esperado.

	if (valor.length == 0) {
		valor = '0000'
	} else

	if (valor.length == 1) {
		valor = '000' + valor
	} else

	if (valor.length == 2) {
		valor = '00' + valor
	}else if(valor.length == 3){
		valor = '0' + valor
	}else if(valor.length == 5){
		valor = valor.substring(1, 5)
	}
	;

	// Verifica se todos os caracteres s�o n�meros

	for (i = 0; i <= valor.length; i++) {

		for (j = 0; j <= aceita.length; j++) {

			if (valor.charAt(i) == aceita.charAt(j)) {

				resultado = resultado + valor.charAt(i);

			}

		}

	}

	valor = resultado;

	resultado = '';

	// Atribui o ponto decimal no lugar correto

	for (i = valor.length; i >= 0; i--) {

		if ((valor.length - i) == 3) {

			resultado = ':' + resultado

		}

		resultado = valor.charAt(i) + resultado

	}

	edValue.value = resultado;

	return 0;

}

       function retornaCEPFormatado(evento){
           var Campo;

        if (document.all) // Internet Explorer
           Campo = evento.srcElement;
        else // Nestcape, Mozzila
            Campo = evento.target;

        var vr = new String(Campo.value);
        if (vr != ""){
            vr = vr.replace("-", "");
            Campo.value = vr.substr(0,5) + '-' + vr.substr(5,3);
        }
       }


       function retornaTelefoneFormatado(evento){
           var Campo;

        if (document.all) // Internet Explorer
           Campo = evento.srcElement;
        else // Nestcape, Mozzila
            Campo = evento.target;

        OnlyNumber(Campo);
        var vr = new String(Campo.value);
        if (vr != ""){
            vr = vr.replace("-", "");
            Campo.value = vr.substr(0,4) + '-' + vr.substr(4,4);
        }
       }

       function checkMail(mail){
        var er = new RegExp(/^[A-Za-z0-9_\-\.]+@[A-Za-z0-9_\-\.]{2,}\.[A-Za-z0-9]{2,}(\.[A-Za-z0-9])?/);
        if(typeof(mail) == "string"){
                if(er.test(mail)){ return true; }
        }else if(typeof(mail) == "object"){
                if(er.test(mail.value)){
                                        return true;
                                }
        }else{
                return false;
                }
}

function checkURL()
{
     var theurl=document.myForm.t1.value;
     var tomatch= /http:\/\/[A-Za-z0-9\.-]{3,}\.[A-Za-z]{3}/

     if (tomatch.test(theurl)){
         window.alert("URL OK.");
         return true;
     }
     else
     {
         window.alert("URL invalid. Try again.");
         return false;
     }
}

function mascara(evento, mascara){

    var campo, valor, i, tam, caracter;

    if (document.all) // Internet Explorer
       campo = evento.srcElement;
    else // Nestcape, Mozzila
        campo= evento.target;

    OnlyNumber(campo);

    valor = campo.value;
    tam = valor.length;

    for(i=0;i<mascara.length;i++){
       caracter = mascara.charAt(i);
       if(caracter!="9")
          if(i<tam & caracter!=valor.charAt(i))
             campo.value = valor.substring(0,i) + caracter + valor.substring(i,tam);

    }

 }

